# 读取文件操作
import os

print("获取当前目录的绝对路径:", os.getcwd())

'''
    mode
        r: 只读【默认模式，文件必须存在，不存在则抛出异常】
        w: 只写，写之前会清空文件到内容，如果文件不存在，则创建新文件
        a: 追加的方式，在原文本内容中继续写，如果文件不存在，则创建新文件
        r+: 可读可写
        w+: 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果文件不存在，创建新文件。
        a+：打开一个文件用于读写，如果该文件已存在，文件指针将会放在文件的结尾。文件打开时会是追加模式，如果该文件不存在，创建新文件用于读写。
        b: rb,wb,ab,rb+,wb+,ab+意义和上面一样，用于二进制文件操作
        x: 读写方式：创建新文件并写入，文件若已存在会报错
        +: 能读能写
        t: 编码方式：以文本模式打开，默认此模式
'''

with open("18_文件读取.py", mode="r", encoding="utf-8") as f:
    # 读取文件
    line = f.read()  # 默认读取文件所有的内容，可以指定读取部分内容
    print(line)
    # 关闭文件
    # f.close() with语句自动关闭了

with open("18_文件读取.py", mode="r", encoding="utf-8") as f:
    # 读取文件
    print("读取5个字节的数据 ", f.read(5))


print("*" * 100)
f = open("18_文件读取.py", mode="r", encoding="utf-8")
# 读取多少行 f.readline(n)
# 将文件内容读取到列表中 f.readlines()

for line in f:
    print(line)
f.close()
